package com.bawei.system.domain.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * @Author：luyuhang
 * @Package：com.bawei.mall.user.domain.po
 * @Project：shopping-cart-items
 * @name：UserPO
 */
@Data
@ApiModel(value = "用户表")
public class User {
    @ApiModelProperty("主键ID")
    private Integer id;

    @ApiModelProperty("用户名")
    private String username;

    @ApiModelProperty("密码")
    private String password;

    @ApiModelProperty("生日")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd" , timezone = "GMT+8")
    private Date birthday;

    @ApiModelProperty("城市")
    private String city;

    @ApiModelProperty("创建时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd" , timezone = "GMT+8")
    private Date createTime;

    @ApiModelProperty("性别 查看字典值")
    private Integer gender; // 通常1表示男，0表示女，但具体取决于业务逻辑

    @ApiModelProperty("成长值")
    private Integer growth; // 可能是成长值、积分等

    @ApiModelProperty("头像")
    private String icon;

    @ApiModelProperty("积分")
    private Integer integration; // 可能是积分或其他统计值

    @ApiModelProperty("职业")
    private String job;

    @ApiModelProperty("级别 字典值")
    private Integer memberLevelId;

    @ApiModelProperty("昵称")
    private String nickname;

    @ApiModelProperty("状态 字典值")
    private Integer status; // 用户状态，如0表示正常，1表示禁用等

    @ApiModelProperty("手机号")
    private String phone;

    @ApiModelProperty("个性签名")
    private String personalizedSignature;
}
